package com.boful.convert.core;

import java.rmi.Remote;

import com.boful.convert.model.DiskFile;

/**
 * 转码事件
 * 
 * @author ligson
 * 
 */
public interface TranscodeEvent extends Remote {

	/**
	 * 转码任务提交失败
	 * 
	 * @param diskFile
	 *            源文件
	 * @param errorMessage
	 *            错误信息
	 */
	public void onSubmitFail(DiskFile diskFile, String errorMessage,String jobId);

	/**
	 * 转码任务提交成功
	 * 
	 * @param diskFile
	 *            源文件
	 */
	public void onSubmitSuccess(DiskFile diskFile,String jobId);

	/**
	 * 开始转码文件
	 * 
	 * @param diskFile
	 *            源文件
	 */
	public void onStartTranscode(DiskFile diskFile,String jobId);

	/**
	 * 转码成功
	 * 
	 * @param diskFile
	 *            源文件
	 * @param destFile
	 *            目标文件
	 * 
	 */
	public void onTranscodeSuccess(DiskFile diskFile, DiskFile destFile,String jobId);

	/**
	 * 转码过程
	 * 
	 * @param diskFile
	 *            源文件
	 * @param process
	 *            进度(0-100)
	 */
	public void onTranscode(DiskFile diskFile, int process,String jobId);

	/**
	 * 转码失败
	 * 
	 * @param diskFile
	 *            源文件
	 * @param errorMessage
	 *            错误信息
	 */
	public void onTranscodeFail(DiskFile diskFile, String errorMessage,String jobId);
}
